/*
 * CS_GUILD_INFO.cpp
 *
 *  Created on: 2014. 7. 31.
 *      Author: spencer
 */




#include "../../User.h"
#include "../../Command.h"
#include "../../Proxy.h"

#include "../protocol/Guild.h"

namespace ProjectZ { namespace NCommand {

void Command::CS_GUILD_INFO(User * pUser, ::Network::Packet * pPacket)
{
/*
길드 정보 요청
CS_GUILD_MENU_INFO					0x3200
{
	u32			u32guild_seq;				//길드번호
}

 길드 정보 요청 응답
SC_GUILD_MENU_INFO					0x3201
{
	s16				s16ack;						/// ACK_OK: 성공

	u32				u32guild_seq;				//길드번호
	str				strGuild_name;				//길드명

	str				strGuild_master_id;			//길마 ID(카카오톡ID)
	str				strGuild_master_nickname;	//길마 닉네임
	str				strGuild_master_profile_url;//길마 프로필url

	u32				u32Guild_point;				//현재 길드 포인트
	u32				u32Guild_max_point;			//최대 길드 포인트
	u8				u8Guild_level;				//길드등급 (길드없음 0, 길드 등급에 따라 1~6)

	u8				u32Guild_max_member;		//길드 최대 인원
	u8				u32Guild_current_member;	//길드 현재 인원

	s16				s16Buff_skill_tid;			//길드 버프 TID
	u8				u8Skill_level;				//길드 버프 레벨
	s16				s16Skill_value;				//길드 버프 값

	u8				u8member_type;				// 회원 구분 ( 0 : 미가입, 1 : 길드장, 10 : 길드원)
	u8				u8Is_recruit;				//길드원 모집 여부 //0: 모집중 아님, 1:모집중   2:모집중 암호필요
	str				strGuild_password;			//길드 패스워드 ( 4자리 자연수, 존재하지 않으면 : NULL )
	str				strGuild_message;			//길드 모집글
}
*/
	PREPARE_PACKET;

	uint32_t target_guild_seq = 0;

	*pPacket >> target_guild_seq;

	if (0 >= target_guild_seq)
	{
		::Network::Packet * pAck = ::Network::GETPACKETPOOL()->SEND_NEW();
		*pAck << static_cast<int16_t>(ACK_UNKNOWN_ERROR);
		pAck->MakePacket(CMD_SC_GUILD_MENU_INFO);
		pUser->Send(pAck);
		return;
	}

	GuildInfoSyn syn;
	syn.user_seq	= pUser->GetUserSeq();
	syn.guild_seq	= target_guild_seq;

//	DEBUGLOG("%s> user_seq: %d, guild_seq: %d"
//			, __FUNCTION__
//			, syn.user_seq, syn.guild_seq
//			);

	if (false == NProxy::SendGuildServer(pUser, syn))
	{
		::Network::Packet * pAck = ::Network::GETPACKETPOOL()->SEND_NEW();
		*pAck << static_cast<int16_t>(ACK_UNKNOWN_ERROR);
		pAck->MakePacket(CMD_SC_GUILD_MENU_INFO);
		pUser->Send(pAck);
		return;
	}
}

} /*NCommand*/ } /*ProjectZ*/
